package com.zhsource.system.mapper;

import com.zhsource.system.domain.Employee;
import com.zhsource.system.domain.Employee;
import com.zhsource.system.query.EmployeeQuery;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>@ClassName：EmployeeMapper
 * <p>@Date 2023/10/17  23:15
 *
 * @Author zzl
 **/
public interface EmployeeMapper {
    List<Employee> list();

    Employee selectById(Long id);

    void update(Employee employee);

    void insert(Employee employee);

    void delete(Long id);

    void batchDel(List<Long> ids);

    List<Employee> page(EmployeeQuery employeeQuery);

    void insertEmployeeAndRole(@Param("id") Long id,@Param("roleId") Long roleId);

    void batchinsertEmployeeAndRole(@Param("id") Long id,  @Param("roleIds")List<Long> roleIds);

    void deleteEmployeeAndRoleByEmployeeId(Long id);

    void deleteByEmployeeId(Long id);

    void batchDeletByEmployeeIds(List<Long> ids);

    Employee selectByLogininfoId(Long id);

    void updateLoginInfo(Employee employee);

    void deleteLoginInfo(Long id);

    void batchDelLogininfo(List<Long> ids);
}
